﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class TableDataSource
   | FastReport OpenSource Class Reference </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class TableDataSource
   | FastReport OpenSource Class Reference ">
    <meta name="generator" content="docfx 2.45.1.0">
    
    <link rel="shortcut icon" href="../favicon.ico">
    <link rel="stylesheet" href="../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../styles/docfx.css">
    <link rel="stylesheet" href="../styles/main.css">
    <meta property="docfx:navrel" content="../toc.html">
    <meta property="docfx:tocrel" content="toc.html">
    
    
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar navbar-inverse ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="../index.html">
                <img id="logo" class="svg" src="../logo.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search" id="breadcrumb">
            <ul class="breadcrumb">
              <li></li>
            </ul>
          </div>
        </div>
      </header>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="FastReport.Data.TableDataSource">
  
  
  <h1 id="FastReport_Data_TableDataSource" data-uid="FastReport.Data.TableDataSource" class="text-break">Class TableDataSource
  </h1>
  <div class="markdown level0 summary"><p>Represents a datasource based on <strong>DataTable</strong> class.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><span class="xref">System.Object</span></div>
    <div class="level1"><a class="xref" href="FastReport.Base.html">Base</a></div>
    <div class="level2"><a class="xref" href="FastReport.Data.DataComponentBase.html">DataComponentBase</a></div>
    <div class="level3"><a class="xref" href="FastReport.Data.Column.html">Column</a></div>
    <div class="level4"><a class="xref" href="FastReport.Data.DataSourceBase.html">DataSourceBase</a></div>
    <div class="level5"><span class="xref">TableDataSource</span></div>
      <div class="level6"><a class="xref" href="FastReport.Data.JsonConnection.JsonTableDataSource.html">JsonTableDataSource</a></div>
  </div>
  <div classs="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="FastReport.IFRSerializable.html">IFRSerializable</a></div>
    <div><a class="xref" href="FastReport.IParent.html">IParent</a></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_currentRow">DataSourceBase.currentRow</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Load">DataSourceBase.Load</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_RowCount">DataSourceBase.RowCount</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_HasMoreRows">DataSourceBase.HasMoreRows</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_CurrentRow">DataSourceBase.CurrentRow</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_CurrentRowNo">DataSourceBase.CurrentRowNo</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Item_System_String_">DataSourceBase.Item[String]</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Item_FastReport_Data_Column_">DataSourceBase.Item[Column]</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_ForceLoadData">DataSourceBase.ForceLoadData</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_DataType">DataSourceBase.DataType</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_BindableControl">DataSourceBase.BindableControl</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_CustomBindableControl">DataSourceBase.CustomBindableControl</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Format">DataSourceBase.Format</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Expression">DataSourceBase.Expression</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Calculated">DataSourceBase.Calculated</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_GetValue_System_String_">DataSourceBase.GetValue(String)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Init">DataSourceBase.Init()</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Init_System_String_">DataSourceBase.Init(String)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Init_System_String_FastReport_SortCollection_">DataSourceBase.Init(String, SortCollection)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Init_FastReport_Data_DataSourceBase_">DataSourceBase.Init(DataSourceBase)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Init_FastReport_Data_DataSourceBase_System_String_FastReport_SortCollection_">DataSourceBase.Init(DataSourceBase, String, SortCollection)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Init_FastReport_Data_Relation_System_String_FastReport_SortCollection_">DataSourceBase.Init(Relation, String, SortCollection)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_EnsureInit">DataSourceBase.EnsureInit()</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_First">DataSourceBase.First()</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Next">DataSourceBase.Next()</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Prior">DataSourceBase.Prior()</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Deserialize_FastReport_Utils_FRReader_">DataSourceBase.Deserialize(FRReader)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.Column.html#FastReport_Data_Column_PropName">Column.PropName</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.Column.html#FastReport_Data_Column_PropDescriptor">Column.PropDescriptor</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.Column.html#FastReport_Data_Column_Columns">Column.Columns</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.Column.html#FastReport_Data_Column_SetName_System_String_">Column.SetName(String)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.Column.html#FastReport_Data_Column_GetExpressions">Column.GetExpressions()</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.Column.html#FastReport_Data_Column_GetChildOrder_FastReport_Base_">Column.GetChildOrder(Base)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.Column.html#FastReport_Data_Column_SetChildOrder_FastReport_Base_System_Int32_">Column.SetChildOrder(Base, Int32)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.Column.html#FastReport_Data_Column_UpdateLayout_System_Single_System_Single_">Column.UpdateLayout(Single, Single)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataComponentBase.html#FastReport_Data_DataComponentBase_Alias">DataComponentBase.Alias</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataComponentBase.html#FastReport_Data_DataComponentBase_Enabled">DataComponentBase.Enabled</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataComponentBase.html#FastReport_Data_DataComponentBase_ReferenceName">DataComponentBase.ReferenceName</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataComponentBase.html#FastReport_Data_DataComponentBase_Reference">DataComponentBase.Reference</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataComponentBase.html#FastReport_Data_DataComponentBase_IsAliased">DataComponentBase.IsAliased</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Data.DataComponentBase.html#FastReport_Data_DataComponentBase_Assign_FastReport_Base_">DataComponentBase.Assign(Base)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_Name">Base.Name</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_Restrictions">Base.Restrictions</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_Flags">Base.Flags</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_Parent">Base.Parent</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_BaseName">Base.BaseName</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_ClassName">Base.ClassName</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_Report">Base.Report</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_Page">Base.Page</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_ChildObjects">Base.ChildObjects</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_AllObjects">Base.AllObjects</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_ZOrder">Base.ZOrder</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_IsAncestor">Base.IsAncestor</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_IsDesigning">Base.IsDesigning</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_IsPrinting">Base.IsPrinting</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_IsRunning">Base.IsRunning</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_OriginalComponent">Base.OriginalComponent</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_SetProp_FastReport_Base_FastReport_Base_">Base.SetProp(Base, Base)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_FloatDiff_System_Single_System_Single_">Base.FloatDiff(Single, Single)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_DeserializeSubItems_FastReport_Utils_FRReader_">Base.DeserializeSubItems(FRReader)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_ExtractDefaultMacros_System_String_">Base.ExtractDefaultMacros(String)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_SetFlags_FastReport_Flags_System_Boolean_">Base.SetFlags(Flags, Boolean)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_SetReport_FastReport_Report_">Base.SetReport(Report)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_SetParentCore_FastReport_Base_">Base.SetParentCore(Base)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_FindObject_System_String_">Base.FindObject(String)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_CreateUniqueName">Base.CreateUniqueName()</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_Clear">Base.Clear()</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_BaseAssign_FastReport_Base_">Base.BaseAssign(Base)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_AssignAll_FastReport_Base_">Base.AssignAll(Base)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_HasParent_FastReport_Base_">Base.HasParent(Base)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_HasFlag_FastReport_Flags_">Base.HasFlag(Flags)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_HasRestriction_FastReport_Restrictions_">Base.HasRestriction(Restrictions)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_InvokeEvent_System_String_System_Object_">Base.InvokeEvent(String, Object)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_OnAfterLoad">Base.OnAfterLoad()</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_GetCustomScript">Base.GetCustomScript()</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_ExtractMacros">Base.ExtractMacros()</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_IsHaveToConvert_System_Object_">Base.IsHaveToConvert(Object)</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_GetConvertedObjects">Base.GetConvertedObjects()</a>
    </div>
    <div>
      <a class="xref" href="FastReport.Base.html#FastReport_Base_ForEachAllConvectedObjects_System_Object_">Base.ForEachAllConvectedObjects(Object)</a>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="FastReport.Data.html">FastReport.Data</a></h6>
  <h6><strong>Assembly</strong>: FastReport.OpenSource.dll</h6>
  <h5 id="FastReport_Data_TableDataSource_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class TableDataSource : DataSourceBase, IFRSerializable, IParent</code></pre>
  </div>
  <h5 id="FastReport_Data_TableDataSource_examples"><strong>Examples</strong></h5>
  <p>This example shows how to add a new table to the existing connection:</p>
<pre><code>Report report1;
DataConnectionBase conn = report1.Dictionary.Connections.FindByName(&quot;Connection1&quot;);
TableDataSource table = new TableDataSource();
table.TableName = &quot;Employees&quot;;
table.Name = &quot;Table1&quot;;
conn.Tables.Add(table);</code></pre>

  <h3 id="constructors">Constructors
  </h3>
  
  
  <a id="FastReport_Data_TableDataSource__ctor_" data-uid="FastReport.Data.TableDataSource.#ctor*"></a>
  <h4 id="FastReport_Data_TableDataSource__ctor" data-uid="FastReport.Data.TableDataSource.#ctor">TableDataSource()</h4>
  <div class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="FastReport.Data.TableDataSource.html">TableDataSource</a> class with default settings.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public TableDataSource()</code></pre>
  </div>
  <h3 id="properties">Properties
  </h3>
  
  
  <a id="FastReport_Data_TableDataSource_Connection_" data-uid="FastReport.Data.TableDataSource.Connection*"></a>
  <h4 id="FastReport_Data_TableDataSource_Connection" data-uid="FastReport.Data.TableDataSource.Connection">Connection</h4>
  <div class="markdown level1 summary"><p>Gets or sets the parent <a class="xref" href="FastReport.Data.DataConnectionBase.html">DataConnectionBase</a> object.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public DataConnectionBase Connection { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="FastReport.Data.DataConnectionBase.html">DataConnectionBase</a></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  
  
  <a id="FastReport_Data_TableDataSource_Parameters_" data-uid="FastReport.Data.TableDataSource.Parameters*"></a>
  <h4 id="FastReport_Data_TableDataSource_Parameters" data-uid="FastReport.Data.TableDataSource.Parameters">Parameters</h4>
  <div class="markdown level1 summary"><p>Gets a collection of parameters used by &quot;select&quot; command.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public CommandParameterCollection Parameters { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="FastReport.Data.CommandParameterCollection.html">CommandParameterCollection</a></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h5 id="FastReport_Data_TableDataSource_Parameters_remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>You must set up this property if the SQL query that you've specified in the
<a class="xref" href="FastReport.Data.TableDataSource.html#FastReport_Data_TableDataSource_SelectCommand">SelectCommand</a> property contains parameters.</p>
<p>You can pass a value to the SQL parameter in two ways.
<p>The right way is to define a report parameter. You can do this in the 
&quot;Data&quot; window. Once you have defined the parameter, you can use it to pass a value 
to the SQL parameter. To do this, set the SQL parameter&apos;s <strong>Expression</strong> property
to the report parameter&apos;s name (so it will look like [myReportParam]).
To pass a value to the report parameter from your application, use the 
<a class="xref" href="FastReport.Report.html#FastReport_Report_SetParameterValue_System_String_System_Object_">SetParameterValue(String, Object)</a> method.
<p>The other way (unrecommended) is to find a datasource object and set its parameter from a code:
<pre><code>TableDataSource ds = report.GetDataSource(&quot;My DataSource Name&quot;) as TableDataSource;
ds.Parameters[0].Value = 10;</code></pre>
This way is not good because you hardcode the report object&apos;s name.
</div>
  
  
  <a id="FastReport_Data_TableDataSource_QbSchema_" data-uid="FastReport.Data.TableDataSource.QbSchema*"></a>
  <h4 id="FastReport_Data_TableDataSource_QbSchema" data-uid="FastReport.Data.TableDataSource.QbSchema">QbSchema</h4>
  <div class="markdown level1 summary"><p>Gets or sets the query builder schema.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public string QbSchema { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h5 id="FastReport_Data_TableDataSource_QbSchema_remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>This property is for internal use only.</p>
</div>
  
  
  <a id="FastReport_Data_TableDataSource_SelectCommand_" data-uid="FastReport.Data.TableDataSource.SelectCommand*"></a>
  <h4 id="FastReport_Data_TableDataSource_SelectCommand" data-uid="FastReport.Data.TableDataSource.SelectCommand">SelectCommand</h4>
  <div class="markdown level1 summary"><p>Gets or sets SQL &quot;select&quot; command.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public string SelectCommand { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h5 id="FastReport_Data_TableDataSource_SelectCommand_remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>If this command contains parameters, you should specify them in the <a class="xref" href="FastReport.Data.TableDataSource.html#FastReport_Data_TableDataSource_Parameters">Parameters</a>
property.</p>
</div>
  
  
  <a id="FastReport_Data_TableDataSource_StoreData_" data-uid="FastReport.Data.TableDataSource.StoreData*"></a>
  <h4 id="FastReport_Data_TableDataSource_StoreData" data-uid="FastReport.Data.TableDataSource.StoreData">StoreData</h4>
  <div class="markdown level1 summary"><p>Gets or sets a value that determines whether it is necessary to store table data in a report file.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public bool StoreData { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  
  
  <a id="FastReport_Data_TableDataSource_Table_" data-uid="FastReport.Data.TableDataSource.Table*"></a>
  <h4 id="FastReport_Data_TableDataSource_Table" data-uid="FastReport.Data.TableDataSource.Table">Table</h4>
  <div class="markdown level1 summary"><p>Gets or sets the underlying <strong>DataTable</strong> object.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public DataTable Table { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">DataTable</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  
  
  <a id="FastReport_Data_TableDataSource_TableData_" data-uid="FastReport.Data.TableDataSource.TableData*"></a>
  <h4 id="FastReport_Data_TableDataSource_TableData" data-uid="FastReport.Data.TableDataSource.TableData">TableData</h4>
  <div class="markdown level1 summary"><p>Gets or sets the table data.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public string TableData { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h5 id="FastReport_Data_TableDataSource_TableData_remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>This property is for internal use only.</p>
</div>
  
  
  <a id="FastReport_Data_TableDataSource_TableName_" data-uid="FastReport.Data.TableDataSource.TableName*"></a>
  <h4 id="FastReport_Data_TableDataSource_TableName" data-uid="FastReport.Data.TableDataSource.TableName">TableName</h4>
  <div class="markdown level1 summary"><p>Gets or sets the table name.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public string TableName { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
  </h3>
  
  
  <a id="FastReport_Data_TableDataSource_AddChild_" data-uid="FastReport.Data.TableDataSource.AddChild*"></a>
  <h4 id="FastReport_Data_TableDataSource_AddChild_FastReport_Base_" data-uid="FastReport.Data.TableDataSource.AddChild(FastReport.Base)">AddChild(Base)</h4>
  <div class="markdown level1 summary"><p>Adds a child object to this object's childs.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override void AddChild(Base child)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="FastReport.Base.html">Base</a></td>
        <td><span class="parametername">child</span></td>
        <td><p>Object to add.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="FastReport.Data.Column.html#FastReport_Data_Column_AddChild_FastReport_Base_">Column.AddChild(Base)</a></div>
  
  
  <a id="FastReport_Data_TableDataSource_CanContain_" data-uid="FastReport.Data.TableDataSource.CanContain*"></a>
  <h4 id="FastReport_Data_TableDataSource_CanContain_FastReport_Base_" data-uid="FastReport.Data.TableDataSource.CanContain(FastReport.Base)">CanContain(Base)</h4>
  <div class="markdown level1 summary"><p>Gets a value indicating that this object can contain the specified child object.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override bool CanContain(Base child)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="FastReport.Base.html">Base</a></td>
        <td><span class="parametername">child</span></td>
        <td><p>Child object.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><p><strong>true</strong> if this object can contain the specified child object; otherwise, <strong>false</strong>.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="FastReport.Data.Column.html#FastReport_Data_Column_CanContain_FastReport_Base_">Column.CanContain(Base)</a></div>
  
  
  <a id="FastReport_Data_TableDataSource_Dispose_" data-uid="FastReport.Data.TableDataSource.Dispose*"></a>
  <h4 id="FastReport_Data_TableDataSource_Dispose_System_Boolean_" data-uid="FastReport.Data.TableDataSource.Dispose(System.Boolean)">Dispose(Boolean)</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">protected override void Dispose(bool disposing)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">disposing</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="FastReport.Base.html#FastReport_Base_Dispose_System_Boolean_">Base.Dispose(Boolean)</a></div>
  
  
  <a id="FastReport_Data_TableDataSource_GetChildObjects_" data-uid="FastReport.Data.TableDataSource.GetChildObjects*"></a>
  <h4 id="FastReport_Data_TableDataSource_GetChildObjects_FastReport_ObjectCollection_" data-uid="FastReport.Data.TableDataSource.GetChildObjects(FastReport.ObjectCollection)">GetChildObjects(ObjectCollection)</h4>
  <div class="markdown level1 summary"><p>Gets a list of child objects.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override void GetChildObjects(ObjectCollection list)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="FastReport.ObjectCollection.html">ObjectCollection</a></td>
        <td><span class="parametername">list</span></td>
        <td><p>List to fill with values.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="FastReport.Data.Column.html#FastReport_Data_Column_GetChildObjects_FastReport_ObjectCollection_">Column.GetChildObjects(ObjectCollection)</a></div>
  
  
  <a id="FastReport_Data_TableDataSource_GetValue_" data-uid="FastReport.Data.TableDataSource.GetValue*"></a>
  <h4 id="FastReport_Data_TableDataSource_GetValue_FastReport_Data_Column_" data-uid="FastReport.Data.TableDataSource.GetValue(FastReport.Data.Column)">GetValue(Column)</h4>
  <div class="markdown level1 summary"><p>Gets data stored in a specified column.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">protected override object GetValue(Column column)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="FastReport.Data.Column.html">Column</a></td>
        <td><span class="parametername">column</span></td>
        <td><p>The column.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Object</span></td>
        <td><p>An object that contains the data.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_GetValue_FastReport_Data_Column_">DataSourceBase.GetValue(Column)</a></div>
  
  
  <a id="FastReport_Data_TableDataSource_InitializeComponent_" data-uid="FastReport.Data.TableDataSource.InitializeComponent*"></a>
  <h4 id="FastReport_Data_TableDataSource_InitializeComponent" data-uid="FastReport.Data.TableDataSource.InitializeComponent">InitializeComponent()</h4>
  <div class="markdown level1 summary"><p>Initializes the object before running a report.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override void InitializeComponent()</code></pre>
  </div>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_InitializeComponent">DataSourceBase.InitializeComponent()</a></div>
  <h5 id="FastReport_Data_TableDataSource_InitializeComponent_remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>This method is used by the report engine, do not call it directly.</p>
</div>
  
  
  <a id="FastReport_Data_TableDataSource_InitSchema_" data-uid="FastReport.Data.TableDataSource.InitSchema*"></a>
  <h4 id="FastReport_Data_TableDataSource_InitSchema" data-uid="FastReport.Data.TableDataSource.InitSchema">InitSchema()</h4>
  <div class="markdown level1 summary"><p>Initializes the datasource schema.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override void InitSchema()</code></pre>
  </div>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_InitSchema">DataSourceBase.InitSchema()</a></div>
  <h5 id="FastReport_Data_TableDataSource_InitSchema_remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>This method is used to support the FastReport.Net infrastructure. Do not call it directly.</p>
</div>
  
  
  <a id="FastReport_Data_TableDataSource_LoadData_" data-uid="FastReport.Data.TableDataSource.LoadData*"></a>
  <h4 id="FastReport_Data_TableDataSource_LoadData_System_Collections_ArrayList_" data-uid="FastReport.Data.TableDataSource.LoadData(System.Collections.ArrayList)">LoadData(ArrayList)</h4>
  <div class="markdown level1 summary"><p>Loads the datasource with data.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override void LoadData(ArrayList rows)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Collections.ArrayList</span></td>
        <td><span class="parametername">rows</span></td>
        <td><p>Rows to fill with data.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_LoadData_System_Collections_ArrayList_">DataSourceBase.LoadData(ArrayList)</a></div>
  <h5 id="FastReport_Data_TableDataSource_LoadData_System_Collections_ArrayList__remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>This method is used to support the FastReport.Net infrastructure. Do not call it directly.</p>
</div>
  
  
  <a id="FastReport_Data_TableDataSource_RefreshTable_" data-uid="FastReport.Data.TableDataSource.RefreshTable*"></a>
  <h4 id="FastReport_Data_TableDataSource_RefreshTable" data-uid="FastReport.Data.TableDataSource.RefreshTable">RefreshTable()</h4>
  <div class="markdown level1 summary"><p>Refresh the table schema.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public void RefreshTable()</code></pre>
  </div>
  
  
  <a id="FastReport_Data_TableDataSource_RemoveChild_" data-uid="FastReport.Data.TableDataSource.RemoveChild*"></a>
  <h4 id="FastReport_Data_TableDataSource_RemoveChild_FastReport_Base_" data-uid="FastReport.Data.TableDataSource.RemoveChild(FastReport.Base)">RemoveChild(Base)</h4>
  <div class="markdown level1 summary"><p>Removes a specified object from this object's childs.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override void RemoveChild(Base child)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="FastReport.Base.html">Base</a></td>
        <td><span class="parametername">child</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="FastReport.Data.Column.html#FastReport_Data_Column_RemoveChild_FastReport_Base_">Column.RemoveChild(Base)</a></div>
  
  
  <a id="FastReport_Data_TableDataSource_Serialize_" data-uid="FastReport.Data.TableDataSource.Serialize*"></a>
  <h4 id="FastReport_Data_TableDataSource_Serialize_FastReport_Utils_FRWriter_" data-uid="FastReport.Data.TableDataSource.Serialize(FastReport.Utils.FRWriter)">Serialize(FRWriter)</h4>
  <div class="markdown level1 summary"><p>Serializes the object.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override void Serialize(FRWriter writer)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="FastReport.Utils.FRWriter.html">FRWriter</a></td>
        <td><span class="parametername">writer</span></td>
        <td><p>Writer object.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="FastReport.Data.DataSourceBase.html#FastReport_Data_DataSourceBase_Serialize_FastReport_Utils_FRWriter_">DataSourceBase.Serialize(FRWriter)</a></div>
  <h5 id="FastReport_Data_TableDataSource_Serialize_FastReport_Utils_FRWriter__remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>Do not call this method directly. You should override it if you are
  developing a new component for FastReport.</p>
<p>This method is called when the object needs to save the state. It may happen
  when:</p>
<ul><li>saving the report to the file or stream;</li><li>saving the report to the designer&apos;s undo buffer;</li><li>
              assigning the object to another object using the
<a class="xref" href="FastReport.Base.html#FastReport_Base_Assign_FastReport_Base_">Assign(Base)</a> or <a class="xref" href="FastReport.Base.html#FastReport_Base_AssignAll_FastReport_Base_">AssignAll(Base)</a> methods;
</li><li>saving the object to the designer&apos;s clipboard;</li><li>saving the object to the preview (when run a
report).</li></ul>
</div>
  
  
  <a id="FastReport_Data_TableDataSource_SetParent_" data-uid="FastReport.Data.TableDataSource.SetParent*"></a>
  <h4 id="FastReport_Data_TableDataSource_SetParent_FastReport_Base_" data-uid="FastReport.Data.TableDataSource.SetParent(FastReport.Base)">SetParent(Base)</h4>
  <div class="markdown level1 summary"><p>Sets the object's parent.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override void SetParent(Base value)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="FastReport.Base.html">Base</a></td>
        <td><span class="parametername">value</span></td>
        <td><p>New parent.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="FastReport.Base.html#FastReport_Base_SetParent_FastReport_Base_">Base.SetParent(Base)</a></div>
  <h5 id="FastReport_Data_TableDataSource_SetParent_FastReport_Base__remarks">Remarks</h5>
  <div class="markdown level1 remarks"><p>This method is for internal use only. You can use it if you are developing a new
component for FastReport. Override it to perform some actions when the parent of an
object is changing. This method checks that parent can contain a child.</p>
</div>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="FastReport.Utils.ParentException.html">ParentException</a></td>
        <td><p>Parent object cannot contain this object.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="implements">Implements</h3>
  <div>
      <a class="xref" href="FastReport.IFRSerializable.html">IFRSerializable</a>
  </div>
  <div>
      <a class="xref" href="FastReport.IParent.html">IParent</a>
  </div>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                </ul>
              </div>
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            
            <span>Generated by <strong>DocFX</strong></span>
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../styles/docfx.js"></script>
    <script type="text/javascript" src="../styles/main.js"></script>
  </body>
</html>
